Ext.define('HelloWorld.controller.Home', {
    extend: 'Ext.app.Controller',	
    views: ['Home', 'SimpleList'],
	stores: ['Stations'],
    // These "refs" will generate "getters" for each of the view component instances
    // e.g. getBottomField and getStationList
    config: {
		refs: { 
			bottomField: {
				selector: 'carousel > panel > #bottomInput'
			},
	       		stationList:  {
	            		selector: 'carousel > list'
	    		}
		}
    },
    init: function() {
        console.log('Init home controller');
		// Start listening for events on views
		this.control({
            // example of listening to *all* button taps
			'button': { 'tap': function () {
						console.log('Every button says Hello world');
					} 
				},
            // Example of listening by an explicit id
			'#firstButton': { 'tap': function () {
						console.log('Only the button with id=firstButton says Hello');
						alert(this.getBottomField().getValue());
					} 
				}			
		});
    },

	onLaunch: function() {
		console.log('onLaunch home controller');
        // The "getter" here was generated by specifying the 
        // stores array (above)
        var stationsStore = this.getStationsStore();  
		
        stationsStore.load({
            callback: this.onStationsLoad,
            scope: this
        });
    },
	
	onStationsLoad: function() {
        console.log('onStationsLoad home controller');
        // get a reference to the view component
        var stationsList = this.getStationList();
        // do something
    },
    
    onStationSelect: function(selModel, selection) {
        // Fire an application wide event
        this.application.fireEvent('stationstart', selection[0]);
    },
	
});